//      presentation_window.h

#ifndef PRESENTATION_WINDOW_H
#define PRESENTATION_WINDOW_H

#include <QDesktopWidget>
#include <QPoint>
#include <QWidget>
#include <QMainWindow>
#include <QStackedWidget>
#include <QVector>
#include <ui_presentation_window.h>
#include <initgraph_page.h>
#include <laststep_page.h>
#include <secondstep_page.h>
#include <firststep_page.h>
#include <result_page.h>
#include <graphscene.h>
#include <core.h>

class PresentationWindow: public QWidget, Ui::PresentationWindow
{
	Q_OBJECT
	
	public:
		PresentationWindow(QMainWindow* startWindow,
											QVector<qreal> pc,
											QVector<qreal> se,
											QWidget* parent = 0);
		void moveToCenter();
		
	private slots:
		void toStartWindow();
		void toPrevPage();
		void toNextPage();
			
	private:
		Core* core;
		QMainWindow* startWindow;
		QStackedWidget* stackedWidget;
		InitGraphPage* initGraphPage;
		LastStepPage* lastStepPage;
		SecondStepPage* secondStepPage;
		FirstStepPage* firstStepPage;
		ResultPage* resultPage;
		GraphScene* initGraph;
		GraphScene* resultGraph;
		void makeLastStepPage();
		void makeSecondStepPage();
		void makeFirstStepPage();
};

#endif /* PRESENTATION_WINDOW_H */ 
